﻿using System;
using System.Collections.Generic;
using System.Web;
using BLGPS;

public class BasePage:System.Web.UI.Page 
{
    public Usuario  Usuario
    {
        get { return (Usuario )Session["Usuario"]; }
        set { Session["Usuario"] = value; }
    }               

    public Empresa  Empresa
    {
        get { return (Empresa )Session["EmpresaGlobal"]; }
        set { Session["EmpresaGlobal"] = value; }
    }

    public string Titulo { set { ((dynamic)Master).Titulo = value;} }

    protected override void OnPreInit(EventArgs e)
    {
        //para cualquier perfil q no sea publico, controlo si hay alguien logueado y si tiene permiso
        if (Perfil.Nombre != Perfil.Publico.Nombre)
        {
            if (Session["Usuario"] == null) Response.Redirect("~/Default.aspx");
            ControlarPermiso();
        }        
    }

    protected virtual void ControlarPermiso() 
    {       
        if (!Usuario.Permisos.TienePermiso(Permiso))
        {
            Response.Redirect("~/Comun/Index.aspx");//lo mando al index porq si esta logueado pero no tiene permiso
        }
    }

    protected virtual Permiso Permiso
    {
        get { return null; }
    }

    public virtual Perfil Perfil { get { return Perfil.Publico;    } }
    
    /*
    public override string StyleSheetTheme
    {
        get
        {
            if (Session["MyTheme"] == null)
            {
                Session["MyTheme"] = "Green";
            }
            return Session["MyTheme"].ToString();
        }
        set { Session["MyTheme"]= value; }
    }*/
}

